package mysql.v1;

import java.sql.*;

/*
*  JDBC 增删改操作  CUD
*  JDBC 查询操作   R   --->MysqlJDBCV1
* */
public class MysqlJDBCV1 {
    public static void main(String[] args) throws ClassNotFoundException, SQLException {
        //1.注册驱动--链接对应数据库 --MySQL5.5驱动器
        Class.forName("com.mysql.jdbc.Driver");
        //2.准备工作：用户名，密码，url--java字符串
        String username="root";
        String password="";
        String url="jdbc:mysql://127.0.0.1:3308/mi?characterEncoding=UTF-8";
        //3.链接数据库--DriverManager.getConnection();
        //链接成功--返回Connection对象：表示Java与数据库链接成功
        Connection con=DriverManager.getConnection(url,username,password);
        //打桩：测试数据库 是否链接成功，链接成功返回Connection
        System.out.println("测试是否链接成功"+con);
        //4.执行sql【查询】
        //4.1MySQL 有库mi 设置编码集 有表，切记：commit 数据入库
        //4.2Java  执行sql【字符串查询】
        String sql="select * from book";
        //4.3java 执行sql查增改删--链接成功数据库\
        //Statement执行sql  查操作 executeQuery(sql)
        //                       返回值：ResultSet  结果集对象
        //Statement执行sql  增删改操作 executeUpdate(sql)
        //                          返回值：int，记录成功多少条
        Statement st=con.createStatement();
        //ResultSet结果集保存表中所有数据
        ResultSet rs=st.executeQuery(sql);
        //5.查询【book表】ResultSet  对象提供 next()依次获取字符下记录【数据】
        //book表--字段7个--while  循环拿所有字段以及记录数
        //看数据--ResultSet结果集--取--字段下记录
        while(rs.next()){  //依次取出数据库中book表中所有字段：7个
            //显示字段记录
            //getInt()  取出数据库中int类型的字段
            int id= rs.getInt("id");
            //mysql varchar类型  Java String类型
            String author=rs.getString("author");
            String name= rs.getString("name");
            int price=rs.getInt("price");
            String date=rs.getString("date");
            int number=rs.getInt("number");
            String discount=rs.getString("discount");
            //打桩：显示多少作者
            System.out.println(name);
        }
    }
}
